From 05e4cd1579c7fee0f78c0206122d8842c2bc1ec8 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Thu, 1 Apr 2021 16:20:32 +0200 Subject: [PATCH] snapshot: scale border widths when appending border nodes Found by Matthias on IRC while arguing about GtkSnapshot being too complicated. --- gtk/gtksnapshot.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gtk/gtksnapshot.c b/gtk/gtksnapshot.c index e118031192..577565d21a 100644 --- a/gtk/gtksnapshot.c +++ b/gtk/gtksnapshot.c @@ -2448,7 +2448,14 @@ gtk_snapshot_append_border (GtkSnapshot *snapshot, gtk_snapshot_ensure_affine (snapshot, &scale_x, &scale_y, &dx, &dy); gsk_rounded_rect_scale_affine (&real_outline, outline, scale_x, scale_y, dx, dy); - node = gsk_border_node_new (&real_outline, border_width, border_color); + node = gsk_border_node_new (&real_outline, + (float[4]) { + border_width[0] * scale_y, + border_width[1] * scale_x, + border_width[2] * scale_y, + border_width[3] * scale_x, + }, + border_color); gtk_snapshot_append_node_internal (snapshot, node); } -- 2.30.2